﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Collections.Generic;

namespace Amoo.Usuario
{
    public partial class Acessos : System.Web.UI.Page
    {

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                Code.Data.Usuario ouser = new Amoo.Code.Data.Usuario();

                DDLUsuario.DataValueField = "idUsuario";
                DDLUsuario.DataTextField = "dsNome";
                DDLUsuario.DataSource = ouser.GetAll();
                DDLUsuario.DataBind();
                //GetAllUsuarioComunidade
                Code.Data.Comunidade oComunidade = new Code.Data.Comunidade();
                Code.Entity.Usuario eUser = new Amoo.Code.Entity.Usuario();
                eUser.idUsuario = int.Parse(DDLUsuario.SelectedValue);

                DDLComunidade.DataValueField = "idComunidade";
                DDLComunidade.DataTextField = "dsNomeComunidade";
                DDLComunidade.DataSource = oComunidade.GetAll();
                DDLComunidade.DataBind();

                oComunidade.Dispose();

                List<Code.Entity.UsuarioComunidade> retList = oComunidade.GetAllUsuarioComunidade(eUser);
                oComunidade.Dispose();


                // Obten o id selecionado e verifica se tem 
                foreach (Code.Entity.UsuarioComunidade item in retList)
                {
                    if (item.idComunidade == int.Parse(DDLComunidade.SelectedValue))
                    {
                        bolPodeBanner.Checked = item.bolPodeBanner;
                        bolPodeConteudo.Checked = item.bolPodeConteudo;
                        bolPodeNoticia.Checked = item.bolPodeNoticia;
                        bolUsuarioProprietario.Checked = item.bolUsuarioProprietario;

                        break;
                    }

                    
                } 

                
            }
        
        }

        protected void Unnamed1_Click(object sender, ImageClickEventArgs e)
        {
            try
            {
                Code.Business.Comunidade.SaveUsuarioComunidade(
                    new Amoo.Code.Entity.UsuarioComunidade()
                    {
                        idUsuario = int.Parse(DDLUsuario.SelectedValue),
                        idComunidade = int.Parse(DDLComunidade.SelectedValue),
                        bolPodeBanner = bolPodeBanner.Checked,
                        bolUsuarioProprietario = bolUsuarioProprietario.Checked,
                        bolPodeConteudo = bolPodeConteudo.Checked,
                        bolPodeNoticia = bolPodeNoticia.Checked
                    });


            }
            catch (Exception ex)
            {
                lblErr.Text = ex.Message;
            }

        }

        protected void DDLUsuario_SelectedIndexChanged(object sender, EventArgs e)
        {
            Code.Data.Comunidade oComunidade = new Code.Data.Comunidade();
            Code.Entity.Usuario eUser = new Amoo.Code.Entity.Usuario();
            eUser.idUsuario = int.Parse(DDLUsuario.SelectedValue);

            bolPodeBanner.Checked = false;
            bolPodeConteudo.Checked = false;
            bolPodeNoticia.Checked = false;
            bolUsuarioProprietario.Checked = false;

            foreach (Code.Entity.UsuarioComunidade item in oComunidade.GetAllUsuarioComunidade(eUser))
            {
                if (item.idComunidade == int.Parse(DDLComunidade.SelectedValue))
                {
                    bolPodeBanner.Checked = item.bolPodeBanner;
                    bolPodeConteudo.Checked = item.bolPodeConteudo;
                    bolPodeNoticia.Checked = item.bolPodeNoticia;
                    bolUsuarioProprietario.Checked = item.bolUsuarioProprietario;

                    break;
                }


            } 
        }

        protected void DDLComunidade_SelectedIndexChanged(object sender, EventArgs e)
        {
            Code.Data.Comunidade oComunidade = new Code.Data.Comunidade();
            Code.Entity.Usuario eUser = new Amoo.Code.Entity.Usuario();
            eUser.idUsuario = int.Parse(DDLUsuario.SelectedValue);

            bolPodeBanner.Checked = false;
            bolPodeConteudo.Checked = false;
            bolPodeNoticia.Checked = false;
            bolUsuarioProprietario.Checked = false;

            foreach (Code.Entity.UsuarioComunidade item in oComunidade.GetAllUsuarioComunidade(eUser))
            {
                if (item.idComunidade == int.Parse(DDLComunidade.SelectedValue))
                {
                    bolPodeBanner.Checked = item.bolPodeBanner;
                    bolPodeConteudo.Checked = item.bolPodeConteudo;
                    bolPodeNoticia.Checked = item.bolPodeNoticia;
                    bolUsuarioProprietario.Checked = item.bolUsuarioProprietario;

                    break;
                }


            }
        }
    }
}
